package creator.singleton.hungry;

import lombok.Data;

/**
 *   枚举类实现单例模式是极力推荐的单例实现模式，因为枚举类型是线程安全的，并且只会装载一次.
 *   设计者充分的利用了枚举的这个特性来实现单例模式，枚举的写法非常简单，而且枚举类型是所用单例实现中唯一一种不会被破坏的单例实现模式。
 *   属于饿汉式单例模式
 */
public enum EnumSingleton {
    INSTANCE;

    // 属性
    private String name;
    private int count;

    // 方法
    public void doSomething() {
        System.out.println("Doing something with " + name);
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getCount() {
        return count;
    }

    public void setCount(int count) {
        this.count = count;
    }
}
